iContract - The Java(tm) Design by Contract(tm) Tool
نویسنده
چکیده
Until today, the explicit speci cation of "software contracts" by means of class invariants and method preand post-conditions was only available to Ei el developers. iContract is the rst tool that provides the same thorough support for Java. iContract is a freely available source-code pre-processor that instruments sourcecode with checks for class invariants as well as preand post-conditions that may be associated with methods in classes and interfaces. Special comment tags (@pre, @post, @invariant) are interpreted by iContract and converted into assertion check code that is inserted into the source-code. iContract supports universal and existential quanti ers in contract expressions. Contracts are propagated via all 4 Java type extension mechanisms (class extension, innerclasses, interface implementation and interface extension). Due to the non-mandatory nature of the comment tags, source code that contains design by contract annotations remains fully compatible with Java and can thus be processed with standard Java compilers, enabling a risk-free adoption of the technique in your organisation.
منابع مشابه
Providing a sophisticated TM software tool to support development of a TM-based system for managing melanoma cases images
There is an ongoing research effort toward the direction of employing Semantic Web technologies, in order to improve knowledge representation and management in medical domains. Topic map (TM) standard is a semantic web enabling technology. In this framework, a TM-based system, that manages melanoma cases images and their related data, may play a vital role, in order to create a system that enco...
متن کاملJBits: A Java-Based Interface to FPGA Hardware
JBits(tm), the Xilinx Bitstream Interface is a set of Java (tm) classes which provide an Application Program Interface (API) into the Xilinx FPGA bitstream. This interface operates on either bitstreams generated by Xilinx design tools, or on bitstreams read back from actual hardware. This provides the capability of designing, modifying and dynamically modifying circuits in Xilinx XC4000 (tm) se...
متن کاملA Comparison and Review of Java Based Mobile Agent Development Frameworks
The widespread acceptance of Sun Microsystem’s Java(tm) language provides the essential groundwork upon which an agent based framework can be built. Three such frameworks are IBM Aglets(tm) Workbench, General Magic Odyssey(tm) and Mitsubishi Electric’s Concordia. Each framework promotes a different concept in agent programming. The use of abstractions varies, as well as the actual capabilities ...
متن کاملRapid and Robust Compiler Construction Using Template-Based Metacompilation
We have developed Tm, a template-based metacompiler. Given a set of data-structure definitions and a template, Tm generates files that instantiate the template for the given data structures. With this process, Tm is able to generate program code to manipulate these data structures. Since it uses templates, the generated code is not restricted to a specific programming language: any sufficiently...
متن کامل